package com.cy.pj.sys.service;

import com.cy.pj.sys.pojo.SysUser;

import java.util.List;

public interface SysUserService {

    /**
     * 基于用户id修改该用户的状态
     *
     * @param id    待修改的用户id
     * @param valid 待修改的状态值
     * @return 修改的条数
     */
    Integer updateValid(Integer id, Integer valid);

    /**
     * 添加用户信息
     *
     * @param sysUser 封装需要添加的用户信息
     * @return 添加的条数
     */
    Integer saveUser(SysUser sysUser);

    /**
     * 修改用户信息
     *
     * @param sysUser 封装需要修改的用户信息
     * @return 修改的条数
     */
    Integer updateUser(SysUser sysUser);

    /**
     * 基于当前所选用户id查找用户信息和该用户的所属部门及角色
     *
     * @param id 用户id
     * @return 查找到的用户信息
     */
    SysUser findById(Integer id);

    /**
     * 基于条件(用户名)查找用户信息
     *
     * @param sysUser 封装查询条件
     * @return 查找到的用户信息列表
     */
    List<SysUser> findUsers(SysUser sysUser);
}
